/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package woowcrawler;

import java.io.Console;
import java.sql.ResultSet;
import java.util.ArrayList;
import woowcrawler.html.*;

/**
 *
 * @author Deise
 */
public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws Exception {

        ManagerArtigo mn = new ManagerArtigo();
        ArrayList<String> urls = GerarURLs.PegarLinksArtigos("informação");
        ArrayList<Artigo> artigos = new ArrayList<Artigo>();
        // DBManager dbm = new DBManager();
        DBMananger_wow dbm = new DBMananger_wow();

        for (String url : urls) {
            WoowDocument document = new WoowDocument(GerarURLs.LerSite(url));
            Artigo a = new Artigo(url);
            a.setAbstract(mn.GetAbstract(document));
            a.setAutores(mn.GetAutores(document));
            a.setISBN(mn.GetIsbn(document));
            a.setPages(mn.GetPages(document));
            a.setTags(mn.GetTags(document));
            a.setTitulo(mn.GetTituloArtigo(document));
            artigos.add(a);

            dbm.insertArtigo(a.getTitulo(), url, a.getAbstract(), a.getISBN(), a.getPages());
            ///ResultSet a2 = dbm.getArtigos();
            int idartigo = dbm.getIdArtigoInserted();


            for (String autor : a.getAutores()) {

                ResultSet rs = dbm.getAutorByName(autor);

                if (!rs.first()) {
                    dbm.insertAutor(autor);
                    int idAutor = dbm.getIdAutorInserted();
                    int idArtigo = dbm.getIdArtigoInserted();
                    dbm.insertAutorArtigo(idAutor, idArtigo);
                }

            }
            for (String tag : a.getTags()) {
                ResultSet res = dbm.getPalavraChaveByName(tag);
                if (res.first()) {
                    dbm.insertArtigopalavrachave(idartigo, res.getInt("id"));
                } else {
                    dbm.insertPalavra(tag);
                    dbm.insertArtigopalavrachave(idartigo, dbm.getIdPalavraChaveInserted());
                }
            }
            
            Palavra p = null;
            WooWStemmer wws = null;

            for(Palavra palavra : p.getPalavrasFrequencias(a.getAbstract()))
            {
                dbm.insertPalavra(palavra.toString());
                dbm.insertCentroid(idartigo, wws.getRadical(palavra.toString()), palavra.toString(), palavra.getQuantidade());
            }
        }

    }
}
